Inter picture prediction method for video coding and decoding and codec

ABSTRACT

The invention discloses an inter picture prediction method for video coding and decoding and a codec. The inter picture prediction method for video coding comprises: performing motion estimation over integer pixel positions of a reference picture, to determine an optimal motion vector for a current prediction unit in a current picture; and performing interpolation filtering processing for motion estimation over fractional pixel position by using the integer pixel position information to which the optimal motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture. The inter picture prediction method for video decoding comprises performing decoding to obtain a motion vector in a current decoding unit; and for fractional pixel motion vector, performing interpolation filtering processing by using reference pixels to which the optimal motion vector directs in a reference picture, and spatially neighboring pixels of the current prediction unit in the current picture. The invention can improve the video coding and decoding efficiency, reduce the bit rate necessary for provision of the same video quality, and also reduce nonzero prediction residual signal so as to facilitate the reduction of blocking artifacts.

FIELD OF THE INVENTION

The present invention relates to the technical field of prediction formotion image coding and interpolation filter, and more particularly toan inter picture prediction method for video coding and decoding and acodec.

BACKGROUND OF THE INVENTION

The compression coding and decoding for motion image is generallyclassified into two prediction technologies for coding and decoding:inter picture coding and decoding as well as intra picture coding anddecoding. The technology of intra picture coding/decoding performspredictive coding/decoding on the current coding/decoding image block byusing the information from the coded/decoded image block of the currentpicture. The technology of inter picture coding/decoding performspredictive coding/decoding on the current coding/decoding image by usingthe information of the picture which has been coded/decoded.

The technology of inter picture coding/decoding provides the interpicture prediction with as small a residue signal as possible for thecurrent picture by performing interpolation filtering on the referencepicture. All the interpolation pixels used in the conventionalinterpolation filter for the reference picture are from the referencepicture. However, the image signal after interpolation is used forpredicting the current picture, and the image information of the currentpicture is failed to be used in the conventional interpolationalgorithm.

In the proposals on International Video Compression Coding Standard fornearly two years, there is an algorithm for performing second-orderprediction on the inter picture prediction information by using thespatially neighboring information of the current coding/decoding unit inthe current picture, among the algorithms for improving the interpicture prediction information for coding/decoding. However, duringimplementation of the present invention, the inventor finds that all ofthese algorithms are modifications to the inter picture predictioninformation, and that the video coding and decoding efficiency is nothigh.

SUMMARY OF THE INVENTION

The embodiment of the present invention provides an inter pictureprediction method for video coding, for improving the video codingefficiency, comprising:

performing motion estimation over integer pixel positions of a referencepicture, to determine an optimal motion vector for a current predictionunit in a current picture; and

performing interpolation filtering processing for motion estimation overfractional pixel position by using the integer pixel positioninformation to which the optimal motion vector directs in the referencepicture, and spatially neighboring pixel information of the currentprediction unit in the current picture.

The embodiment of the invention further provides an inter pictureprediction method for video decoding, for improving the video decodingefficiency, comprising:

performing decoding to obtain a motion vector in a current decodingunit; and

for fractional pixel motion vector, performing interpolation filteringprocessing by using reference pixels to which the optimal motion vectordirects in a reference picture, and spatially neighboring pixels of thecurrent prediction unit in the current picture.

The embodiment of the invention further provides a video coder, forimproving the video coding efficiency, comprising:

a motion estimation module, for performing motion estimation overinteger pixel positions of a reference picture, to determine an optimalmotion vector for a current prediction unit in a current picture; and

an interpolation filter module, for performing interpolation filteringprocessing for motion estimation over fractional pixel position by usingthe integer pixel position information to which the optimal motionvector directs in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picture.

The embodiment of the invention further provides a video decoder, forimproving the video decoding efficiency, comprising:

a motion vector obtaining module, for performing decoding to obtain amotion vector in a current decoding unit; and

an interpolation filter module, for fractional pixel motion vector, forperforming interpolation filtering processing by using reference pixelsto which the optimal motion vector directs in a reference picture, andspatially neighboring pixels of the current prediction unit in thecurrent picture.

In the embodiment of the present invention, the motion estimation isperformed over integer pixel positions of a reference picture, todetermine an optimal motion vector for a current prediction unit in acurrent picture; and the interpolation filtering processing is performedfor motion estimation over fractional pixel position by using theinteger pixel position information to which the optimal motion vectordirects in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picture, whichnot only utilizes the information of both the reference picture and thecurrent picture simultaneously to perform inter picture prediction, butalso improves the inter picture prediction from the motion estimationphase by using the spatially neighboring pixel information of thecurrent prediction unit in the current picture, thereby improving thevideo coding efficiency, reducing the bit rate necessary for provisionof the same video quality, and also reducing nonzero prediction residualsignal so as to facilitate the reduction of blocking artifacts.

In the embodiment of the present invention, decoding is performed toobtain a motion vector in a current decoding unit; and for fractionalpixel motion vector, the interpolation filtering processing is performedby using reference pixels to which the optimal motion vector directs ina reference picture, and spatially neighboring pixels of the currentprediction unit in the current picture, which not only utilizes theinformation of both the reference picture and the current picturesimultaneously to perform inter picture prediction, but also, at thecoding end, improves the inter picture prediction from the motionestimation phase by using the spatially neighboring pixel information ofthe current prediction unit in the current picture, thereby improvingthe video decoding efficiency, reducing the bit rate necessary forprovision of the same video quality, and also reducing nonzeroprediction residual signal so as to facilitate the reduction of blockingartifacts.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to more clearly explain the technical solutions of theembodiments of the invention or of the prior art, the drawings to beused necessary for the description of the embodiments or prior art aresimply introduced below. Obviously, the drawings in the followingdescription are some embodiments of the invention. It is possible forpersons skilled in the art to obtain other drawings according to thesedrawings without creative work. In the drawings:

FIG. 1 is a flow chart of processing of the inter picture predictionmethod for video coding in the embodiment of the invention;

FIG. 2 is a flow chart of processing of the inter picture predictionmethod for video decoding in the embodiment of the invention;

FIG. 3 is a schematic diagram of the conventional inter pictureprediction method for video coding/decoding in the embodiment of theinvention;

FIG. 4 is a schematic diagram of the inter picture prediction method forvideo coding/decoding in the embodiment of the invention;

FIG. 5 is a schematic diagram of an interpolation filter algorithm inthe embodiment of the invention;

FIG. 6 is a flow chart of processing of one example of the inter pictureprediction method for video coding in the embodiment of the invention;

FIG. 7 is a schematic diagram of the structure of the video coder in theembodiment of the invention;

FIG. 8 is a schematic diagram of the structure of the interpolationfilter module in the video coder of the embodiment of the invention;

FIG. 9 is a schematic diagram of the structure of one example of thevideo coder as shown in FIG. 7 in the embodiment of the invention;

FIG. 10 is a schematic diagram of the structure of the prediction outputmodule in the video coder in the embodiment of the invention;

FIG. 11 is a schematic diagram of the structure of an example of thevideo coder as shown in FIG. 7 in the embodiment of the invention;

FIG. 12 is a schematic diagram of the structure of the video decoder inthe embodiment of the invention;

FIG. 13 is a schematic diagram of the structure of the interpolationfilter module in the video decoder in the embodiment of the invention;and

FIG. 14 is a schematic diagram of the structure of an example of thevideo decoder as shown in FIG. 12 of the embodiment of the invention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

To make the objects, the technical solution and the advantages of theembodiments of the invention clearer, the embodiments of the inventionare further explained in detail in connection with the drawings. Herein,the exemplary embodiments of the invention and the explanations thereofare only used to explain the invention, but not to limit the invention.

As shown in FIG. 1, in the embodiment of the invention, the processingflow of the inter picture prediction method for video coding maycomprise:

step 101, performing motion estimation over integer pixel positions of areference picture, to determine an optimal motion vector (Motion Vector,MV) for a current prediction unit in a current picture; the optimalmotion vector determined herein is the optimal motion vector overinteger pixel positions of the current prediction unit in the currentpicture;

step 102, performing interpolation filtering processing for motionestimation over fractional pixel position by using the integer pixelposition information to which the optimal motion vector directs in thereference picture, and spatially neighboring pixel information of thecurrent prediction unit in the current picture.

It can be known from the flow as shown in FIG. 1 that in the embodimentof the present invention, the motion estimation is performed overinteger pixel positions of a reference picture, to determine an optimalmotion vector for a current prediction unit in a current picture; andthe interpolation filtering processing is performed for motionestimation over fractional pixel position by using the integer pixelposition information to which the optimal motion vector directs in thereference picture, and spatially neighboring pixel information of thecurrent prediction unit in the current picture, which not only utilizesthe information of both the reference picture and the current picturesimultaneously to perform inter picture prediction, but also improvesthe inter picture prediction from the motion estimation phase by usingthe spatially neighboring pixel information of the current predictionunit in the current picture, thereby improving the video codingefficiency, reducing the bit rate necessary for provision of the samevideo quality, and also reducing nonzero prediction residual signal soas to facilitate the reduction of blocking artifacts.

As shown in FIG. 2, in the embodiment of the invention, the processingflow of the inter picture prediction method for video decoding maycomprise:

step 201, performing decoding to obtain a motion vector in a currentdecoding unit; and

step 202, for fractional pixel motion vector, performing interpolationfiltering processing by using reference pixels to which the optimalmotion vector directs in a reference picture, and spatially neighboringpixels f the current prediction unit in the current picture.

It can be known from the flow as shown in FIG. 2 that in the embodimentof the present invention, decoding is performed to obtain a motionvector in a current decoding unit; and the interpolation filteringprocessing is performed for fractional pixel motion vector, by usingreference pixels to which the optimal motion vector directs in areference picture, and spatially neighboring pixels of the currentprediction unit in the current picture, which not only utilizes theinformation of both the reference picture and the current picturesimultaneously to perform inter picture prediction, but also, at thecoding end, improves the inter picture prediction from the motionestimation phase by using the spatially neighboring pixel information ofthe current prediction unit in the current picture, thereby improvingthe video decoding efficiency, reducing the bit rate necessary forprovision of the same video quality, and also reducing nonzeroprediction residual signal so as to facilitate the reduction of blockingartifacts.

The inter picture prediction method for video coding/decoding of theembodiment of the invention is explained in detail by specific examplesbelow. The embodiment of the invention breaks the limit in theconventional inter picture prediction method for video coding/decodingthat all the interpolation information are from the reference picture,and proposes the interpolation algorithm for a predicted image by usingthe coded decodable pixel information in the reference picture and thecurrent picture.

FIG. 3 simply shows the conventional inter picture prediction method forvideo coding/decoding. In the conventional method, the picture locatedpreviously to the current coding/decoding picture in the coding anddecoding sequence is used as the reference picture, and the predictioninformation for coding and decoding of the current picture is providedby performing interpolation filtering on the reference picture. Thereference image for generating the prediction image in FIG. 3 is fromthe reference picture, that is, picture k−1.

FIG. 4 exemplarily shows the inter picture prediction method for videocoding/decoding proposed in the embodiment of the invention. Comparedwith FIG. 3, it can be seen that in the embodiment of the invention, notonly the image data information of the reference picture but also thatof the current picture is used. In FIG. 4, the curve of oblique line ofpicture k indicates the pixel position for calculating the predictionimage in the current picture (picture k); the reference image forgenerating the prediction image in FIG. 4 is from the reference picture(picture k−1) and the current picture (picture k).

In the proposals on International Video Compression Coding and DecodingStandard for nearly two years, there is an algorithm for performingsecond-order prediction on the inter picture prediction information byusing the spatially neighboring information of the currentcoding/decoding unit in the current picture, among the algorithms forimproving the inter picture prediction information for coding. However,all of these are modifications to the inter picture predictioninformation, and do not relate to the selection of the optimal motionvector.

In the inter picture prediction method for video coding/decodingproposed in the embodiment of the invention, at the coding end, it is toimprove the prediction information by using the spatially neighboringpixel information of the current prediction unit in the current picturefrom the motion estimation phase. Firstly, motion estimation isperformed over integer pixel positions of a reference picture, and theinterpolation filtering processing is performed for motion estimationover fractional pixel position by using the integer pixel positioninformation to which the optimal motion vector directs in the referencepicture, and spatially neighboring pixel information of the currentprediction unit in the current picture after an optimal motion vectorfor a current prediction unit in a current picture is determined. At thedecoding end, firstly, a motion vector in a current decoding unit isobtained by decoding; and then the interpolation filtering processing isperformed for fractional pixel motion vector, by using reference pixelsto which the optimal motion vector directs in a reference picture, andspatially neighboring pixels of the current prediction unit in thecurrent picture.

The interpolation filter algorithm at the coding end and the decodingend can be shown in FIG. 5. The interpolation filtering processing isperformed in accordance with the following formula.

$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$

By taking luminance as an example, wherein γ_(i,j) is the luminancevalue of the pixel from the current picture or reference pictureparticipating in filtering of the current prediction unit in the currentpicture, p_(i,j) is the luminance value of the prediction pixel obtainedby the interpolation filtering processing, α_(m,n) is the filtercoefficient, (i, j) is the position of the current pixel, and (m, n) isthe position of the prediction pixel.

If (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance valuefrom the current picture, as shown in sections 1-4 of FIG. 5; otherwise,γ_(i−m,j−n) is the luminance value of the pixel from the referencepicture, as shown in sections 5-8 in FIG. 5.

If taking chroma as an example, in the above formula, γ_(i,j) is thechroma value of the pixel from the current picture or reference pictureparticipating in filtering of the current prediction unit in the currentpicture, p_(i,j) is the chroma value of the prediction pixel obtained bythe interpolation filtering processing, α_(m,n) is the filtercoefficient, (i, j) is the position of the current pixel, and (m, n) isthe position of the prediction pixel. If (i−m)<0 and (j−n)<3, or(j−n)<0, γ_(i−m,j−n) is the chroma value from the current picture;otherwise, γ_(i−m,j−n) is the chroma value of the pixel from thereference picture.

The inter picture prediction method for video coding/decoding proposedin the embodiment of the invention contains all the methods forgenerating the prediction image in the way of the embodiment of theinvention, covering various methods for generating the filtercoefficient α_(m,n).

In implementation, after performing the above interpolation filteringprocessing at the coding end, it further comprises: performing motionestimation over integer and fractional pixel positions based oninterpolated samples from the interpolation filtering processing; andselecting the optimal motion vector which provides an optimal predictionfor coding of the current prediction unit according to the motionestimation result.

For example, performing motion estimation on an intermediate value ofthe prediction information for coding obtained after the interpolationfiltering processing may comprise: performing the motion estimation todetermine motion vector at fractional pixel position for coding. Thefractional pixel position herein can be ½ pixel position and ¼ pixelposition. Obviously, ½ pixel position and ¼ pixel position are onlyexamples and the fractional pixel position can be other pixel positionsduring implementation, for example, ⅛, 1/16 pixel positions. As shown inFIG. 6, during implementation, in the flow as shown in FIG. 1, it ispossible to execute step 103 after execution of step 102; performingmotion estimation on the fractional pixel positions of the referencepicture to determine optimal motion vector for current prediction unitof the current encoding unit in the current picture.

For example, selecting the optimal motion vector as the predictioninformation for coding of the current picture according to the motionestimation result may comprise: selecting the motion vectorcorresponding to the minimum RDcost as the optimal motion vector, to bethe prediction information for coding of the current picture accordingto the motion estimation result. The selection of the motion vectorcorresponding to the minimum RDcost as the optimal motion vector hereinis only an example, and the optimal motion vector can be selectedaccording to other parameters during implementation.

It can be known from the above embodiment that the spatially neighboringpixel information of the current prediction unit in the current pictureis applied to perform image interpolation when the video coding/decodinginter picture prediction is performed in the embodiment of theinvention, so as to make the prediction image more similar to thecurrent image. The embodiment of the invention can provide effectiveinter picture prediction information, thereby improving the videocompression coding and decoding efficiency.

During implementation, the method for interpolation-generating areference image for predicting the current image block in the embodimentof the invention is selectable. The reference image may be the referencepicture image block, or may be the current picture image block andreference picture image block. The method corresponding to the one forimage prediction generating the minimum predicted error is taken as theoptimal method to be used. That is, according to the coding valueobtained by the context-adaptive binary arithmetic coding (CABAC), themethod is selected to execute the inter picture prediction method forvideo coding/decoding. Specifically, when applying the context-adaptivebinary arithmetic coding way, it can be assumed that the predictionmethod 0 indicates to apply the conventional method, all the referenceimages are from the picture previous to the current picture according tothe coding and decoding sequence; the prediction method 1 indicates toapply the algorithm proposed by the embodiment of the invention, that isthe method to which the flows in FIGS. 1 and 2 relate, for example, theprediction image is generated by using the images at the upper part andthe left part of the current image block in the current picture. In thisway, the way of generating the optimal predicted image according to thecoding value obtained by the context-adaptive binary arithmetic codingcan save the bit overhead brought by the coding and decoding predictionway.

Based on the same inventive thought, the embodiment of the inventionfurther provides a video coder and a video decoder, as described in thefollowing embodiment. Since the principle of the video coder/videodecoder to solve problems is similar to the inter picture predictionmethod for video coding/decoding, the implementation of the videocoder/video decoder can refer to the implementation of the inter pictureprediction method for video coding/decoding, and it is unnecessary togive more details.

As shown in FIG. 7, the video coder in the embodiment of the inventionmay comprise:

a motion estimation module 701, for performing motion estimation overinteger pixel positions of a reference picture, to determine an optimalmotion vector for a current prediction unit in a current picture; and

an interpolation filter module 702, for performing interpolationfiltering processing for motion estimation over fractional pixelposition by using the integer pixel position information to which theoptimal motion vector directs in the reference picture, and spatiallyneighboring pixel information of the current prediction unit in thecurrent picture.

As shown in FIG. 8, the interpolation filter module 702 in oneembodiment may comprise:

an obtaining unit 801, for obtaining the integer pixel positioninformation to which the optimal motion vector directs in the referencepicture, and spatially neighboring pixel information of the currentprediction unit in the current picture; and

a processing unit 802, for performing the interpolation filteringprocessing according to the following formula:

$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$

By taking luminance as an example, wherein is the luminance value of thepixel form the current picture or reference picture participating infiltering of the current prediction unit in the current picture, p_(i,j)is the luminance value of the prediction pixel obtained by theinterpolation filtering processing, α_(m,n) is the filter coefficient,(i, j) is the position of the current pixel, and (m, n) is the positionof the prediction pixel.

If (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−,j−n) is the luminance valuefrom the current picture; otherwise, γ_(i−m,j−n) is the luminance valuefrom the pixel participating in filtering in the reference picture.

If taking chroma as an example, in the above formula, γ_(i,j) is thechroma value of the pixel form the current picture or reference pictureparticipating in filtering of the current prediction unit in the currentpicture, p_(i,j) is the chroma value of the prediction pixel obtained bythe interpolation filtering processing, α_(m,n) is the filtercoefficient, (i, j) is the position of the current pixel, and (m, n) isthe position of the prediction pixel. If (i−m)<0 and (j−n)<3, or(j−n)<0, γ_(i−m,j−n) is the chroma value from the current picture;otherwise, γ_(i−m,j−n) is the chroma value of the pixel from thereference picture.

As shown in FIG. 9, in one embodiment, the video coder shown in FIG. 7may further comprise:

an intermediate value processing module 901, for performing motionestimation over integer and fractional pixel positions based oninterpolated samples from the interpolation filtering processing; and

a prediction output module 902, for selecting the optimal motion vectorwhich provides an optimal prediction for coding of the currentprediction unit according to the motion estimation result.

In one embodiment, the intermediate value processing module 901 can bespecifically used for:

performing the motion estimation to determine motion vector atfractional pixel position for coding.

As shown in FIG. 10, in one embodiment, the prediction output module 902may comprise:

a selection unit 1001, for selecting the motion vector corresponding tothe minimum RDcost according to the motion estimation result; and

a prediction unit 1002, for determining the selected motion vector asthe optimal motion vector, which provides an optimal predictioninformation for coding of the current picture.

As shown in FIG. 11, in one embodiment, the video coder as shown in FIG.7 may comprise:

a selection execution module 1101, for selecting to start the videocoder shown in FIG. 7 to perform execution according to the coding valueobtained by the context-adaptive binary arithmetic coding CABAC. It isobvious that the video coder shown in FIG. 9 can further comprise theselection execution module 1101.

As shown in FIG. 12, in the embodiment of the invention, the videodecoder may comprise:

a motion vector obtaining module 1201, for performing decoding to obtaina motion vector in a current decoding unit; and

an interpolation filter module 1202, for fractional pixel motion vector,for performing interpolation filtering processing by using referencepixel position information to which the optimal motion vector directs ina reference picture, and spatially neighboring pixel information of thecurrent prediction unit in the current picture.

As shown in FIG. 13, the interpolation filter module 1202 in oneembodiment may comprise:

an obtaining unit 1301, for obtaining the reference pixel positioninformation to which the motion vector directs in the reference picture,and spatially neighboring pixel information of the current predictionunit in the current picture; and

a processing unit 1302, for performing the interpolation filteringprocessing according to the following formula:

$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}{\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$

By taking luminance as an example, wherein γ_(i,j) is the luminancevalue of the pixel from the current picture or reference pictureparticipating in filtering of the current prediction unit in the currentpicture, p_(i,j) is the luminance value of the prediction pixel obtainedby the interpolation filtering processing, α_(m,n) is the filtercoefficient, (i, j) is the position of the current pixel, and (m, n) isthe position of the prediction pixel.

If (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance valuefrom the current picture; otherwise, γ_(i−m,j−n) is the luminance valueof the pixel from reference picture.

If taking chroma as an example, in the above formula, γ_(i,j) is thechroma value of the pixel from the current picture or reference pictureparticipating in filtering of the current prediction unit in the currentpicture, p_(i,j) is the chroma value of the prediction pixel obtained bythe interpolation filtering processing, α_(m,n) is the filtercoefficient, (i, j) is the position of the current pixel, and (m, n) isthe position of the prediction pixel. If (i−m)<0 and (j−n)<3, or(j−n)<0, γ_(i−m,j−n) is the chroma value from the current picture;otherwise, γ_(i−m,j−n) is the chroma value of the pixel from thereference picture.

As shown in FIG. 14, in one embodiment, the video decoder as shown inFIG. 12 may comprise:

a selection execution module 1401, for selecting to start the videodecoder shown in FIG. 12 to perform execution according to the codingvalue obtained by the CABAC.

To sum up, in the embodiment of the present invention, the motionestimation is performed over integer pixel positions of a referencepicture, to determine an optimal motion vector for a current predictionunit in a current picture; and the interpolation filtering processing isperformed for motion estimation over fractional pixel position by usingthe integer pixel position information to which the optimal motionvector directs in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picture, whichnot only utilizes the information of both the reference picture and thecurrent picture simultaneously to perform inter picture prediction, butalso improves the inter picture prediction from the motion estimationphase by using the spatially neighboring pixel information of thecurrent prediction unit in the current picture, thereby improving thevideo coding efficiency, reducing the bit rate necessary for provisionof the same video quality, and also reducing nonzero prediction residualsignal so as to facilitate the reduction of blocking artifacts.

In the embodiment of the present invention, decoding is performed toobtain a motion vector in a current decoding unit; and for fractionalpixel motion vector, the interpolation filtering processing is performedby using reference pixels to which the optimal motion vector directs ina reference picture, and spatially neighboring pixels of the currentprediction unit in the current picture, which not only utilizes theinformation of both the reference picture and the current picturesimultaneously to perform inter picture prediction, but also, at thecoding end, improves the inter picture prediction from the motionestimation phase by using the spatially neighboring pixel information ofthe current prediction unit in the current picture, thereby improvingthe video decoding efficiency, reducing the bit rate necessary forprovision of the same video quality, and also reducing nonzeroprediction residual signal so as to facilitate the reduction of blockingartifacts.

Persons skilled in the art shall understand that the embodiment of theinvention can be provided as a method, system, or computer programproduct. Therefore, the invention can adopt the form of hardware-onlyembodiment, software-only embodiment, or the software-hardware combinedembodiment. Moreover, the invention can adopt the form of computerprogram product implemented on one or more computer applicable storagemedia (comprising, but not be limited to, disc storage, CD-ROM andoptical memory, etc.) containing the computer applicable program codestherein.

The invention is described with reference to the flow charts and/orblock diagrams of the method, apparatus (system) and computer programproduct according to the embodiment of the invention. It is tounderstand that each process and/or block in the flow chart and/or blockdiagram, and combination of the flow and/or block in the flow chartand/or block diagram can be implemented by the computer programinstructions. The computer program instructions can be provided toprocessors of the general-purpose computers, special purpose computers,embedded processors or other programmable data processing apparatuses togenerate one machine, so as to generate a device for implementing thefunction specified in one or more flows in the flow chart and/or one ormore blocks in the block diagrams by the instructions executed by theprocessors of the computers or other programmable data processingapparatuses.

The computer program instructions can be also stored in the computerreadable memory capable of leading the computer or other programmabledata processing apparatuses to operate in a specific way, so that theinstructions stored in the computer readable memory generate themanufacturing product containing the instruction device which implementsthe functions specified in one or more flows in the flow charts and/orone or more blocks in the block diagrams.

The computer program instructions can be also loaded onto the computeror other programmable data processing apparatuses, such that thecomputer or other programmable apparatuses execute a series of operationsteps to generate the processing implemented by the computer, so as toprovide the step for implementing the functions specified in one or moreflows in the flow charts and/or one or more blocks in the block diagramsby the instructions executed on the computers or other programmableapparatuses.

The above embodiments further explain the objects, technical solutionand advantageous effects of the invention in detail. It is to understandthat the above is only specific embodiments of the invention but not tolimit the protection scope of the invention. Any amendments,equivalents, improvements and so on made within the spirit and principleof the invention are included inside the protection scope of theinvention.

1. An inter picture prediction method for video coding, comprising:performing motion estimation over integer pixel positions of a referencepicture, to determine an optimal motion vector for a current predictionunit in a current picture; and performing interpolation filteringprocessing for motion estimation over fractional pixel position by usingthe integer pixel position information to which the optimal motionvector directs in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picture. 2.The method according to claim 1, wherein the step of performinginterpolation filtering processing for motion estimation over fractionalpixel position by using integer pixel position information to which theoptimal motion vector directs in the reference picture, and spatiallyneighboring pixel information of the current prediction unit in thecurrent picture comprises: performing interpolation filtering processingin accordance with the following formula$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}{\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is a luminance value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is a luminance value ofthe prediction pixel obtained by the interpolation filtering processing,α_(m,n) is a filter coefficient, (i, j) is the position of the currentpixel, and (m, n) is the position of the prediction pixel; if (i−m)<0and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance value from thecurrent picture; otherwise, γ_(i−m,j−n) is the luminance value of thepixel from the reference picture.
 3. The method according to claim 1,wherein the step of performing interpolation filtering processing byusing the integer pixel position information to which the optimal motionvector directs in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picturecomprises: performing interpolation filtering processing in accordancewith the following formula$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}{\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is a chroma value of the pixel from the current pictureor reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is a chroma value of theprediction pixel obtained by the interpolation filtering processing,α_(m,n) is the filter coefficient, (i, j) is the position of the currentpixel, and (m, n) is the position of the prediction pixel; if (i−m)<0and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the chroma value from thecurrent picture; otherwise, γ_(i−m,j−n) is the chroma value of the pixelfrom the reference picture.
 4. The method according to claim 1, furthercomprising: performing motion estimation over integer and fractionalpixel positions based on interpolated samples from the interpolationfiltering processing; and selecting the optimal motion vector whichprovides an optimal prediction for coding of the current prediction unitaccording to the motion estimation result.
 5. The method according toclaim 4, wherein performing motion estimation on fractional pixelpositions with interpolated values obtained from the interpolationfiltering processing comprises: performing motion estimation todetermine motion vector at fractional pixel position for coding.
 6. Themethod according to claim 4, wherein selecting the optimal motion vectorfor inter picture prediction and coding of the current picture accordingto the motion estimation result comprises: selecting the motion vectorcorresponding to the minimum RDcost as the optimal motion vector, whichprovides an optimal prediction information for coding of the currentpicture according to the motion estimation result.
 7. The methodaccording to claim 1, further comprising: according to the coding valueobtained by the context-adaptive binary arithmetic coding (CABAC), themethod is selected to execute the inter picture prediction for videocoding.
 8. An inter picture prediction method for video decoding,comprising: performing decoding to obtain a motion vector in a currentdecoding unit; and for fractional pixel motion vector, performinginterpolation filtering processing by using reference pixels to whichthe optimal motion vector directs in a reference picture, and spatiallyneighboring pixels of the current prediction unit in the currentpicture.
 9. The method according to claim 8, wherein the step ofperforming interpolation filtering processing by using the integer pixelposition information to which the motion vector directs in the referencepicture, and spatially neighboring pixel information of the currentprediction unit in the current picture comprises: performinginterpolation filtering processing in accordance with the followingformula$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}{\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the luminance value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the luminance valueof the prediction pixel obtained by the interpolation filteringprocessing, α_(m,n) is the filter coefficient, (i, j) is the position ofthe current pixel, and (m, n) is the position of the prediction pixel;if (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance valuefrom the current picture; otherwise, γ_(i−m,j−n) is the luminance valueof the pixel from the reference picture.
 10. The method according toclaim 8, wherein the step of performing interpolation filteringprocessing by using the integer pixel position information to which themotion vector directs in the reference picture, and spatiallyneighboring pixel information of the current prediction unit in thecurrent picture comprises: performing interpolation filtering processingin accordance with the following formula$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the chroma value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the chroma value ofthe prediction pixel obtained by the interpolation filtering processing,α_(m,n) is the filter coefficient, (i, j) is the position of the currentpixel, and (m, n) is the position of the prediction pixel; if (i−m)<0and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the chroma value from thecurrent picture; otherwise, γ_(i−m,j−n) is the chroma value of the pixelfrom the reference picture.
 11. The method according to claim 8, furthercomprising: according to the coding value obtained by CABAC, the methodis selected to execute the inter picture prediction method for videodecoding.
 12. A video coder, comprising: a motion estimation module, forperforming motion estimation over integer pixel positions of a referencepicture, to determine an optimal motion vector for a current predictionunit in a current picture; and an interpolation filter module, forperforming interpolation filtering processing for motion estimation overfractional pixel position by using the integer pixel positioninformation to which the optimal motion vector directs in the referencepicture, and spatially neighboring pixel information of the currentprediction unit in the current picture.
 13. The video coder according toclaim 12, wherein the interpolation filter module comprises: anobtaining unit, for obtaining the integer pixel position information towhich the optimal motion vector directs in the reference picture, andspatially neighboring pixel information of the current prediction unitin the current picture; and a processing unit, for performing theinterpolation filtering processing according to the following formula:$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the luminance value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the luminance valueof the prediction pixel obtained by the interpolation filteringprocessing, α_(m,n) is the filter coefficient, (i, j) is the position ofthe current pixel, and (m, n) is the position of the prediction pixel;if (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance valuefrom the current picture; otherwise, γ_(i−m,j−n) is the luminance valueof the pixel from the reference picture.
 14. The video coder accordingto claim 12, wherein the interpolation filter module comprises: anobtaining unit, for obtaining the integer pixel position information towhich the optimal motion vector directs in the reference picture, andspatially neighboring pixel information of the current prediction unitin the current picture; and a processing unit, for performing theinterpolation filtering processing according to the following formula:$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the chroma value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the chroma value ofthe prediction pixel obtained by the interpolation filtering processing,α_(m,n) is the filter coefficient, (i, j) is the position of the currentpixel, and (m, n) is the position of the prediction pixel; if (i−m)<0and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the chroma value from thecurrent picture; otherwise, γ_(i−m,j−n) is the chroma value of the pixelfrom the reference picture.
 15. The video coder according to claim 12,further comprising: an intermediate value processing module, forperforming motion estimation over integer and fractional pixel positionsbased on interpolated samples from the interpolation filteringprocessing; and a prediction output module, for selecting the optimalmotion vector which provides an optimal prediction for coding of thecurrent prediction unit according to the motion estimation result. 16.The video coder according to claim 15, wherein the intermediate valueprocessing module is specifically used for: performing the motionestimation to determine motion vector at fractional pixel position forcoding.
 17. The video coder according to claim 15, wherein theprediction output module comprises: a selection unit, for selecting themotion vector corresponding to the minimum RDcost according to themotion estimation result; and a prediction unit, for determining theselected motion vector as the optimal motion vector, which provides anoptimal prediction information for coding of the current picture. 18.The video coder according to claim 12, further comprising: a selectionexecution module, for selecting to start the video coder to performexecution according to the coding value obtained by CABAC.
 19. A videodecoder, comprising: a motion vector obtaining module, for performingdecoding to obtain a motion vector in a current decoding unit; and aninterpolation filter module, for fractional pixel motion vector, forperforming interpolation filtering processing by using reference pixelsto which the optimal motion vector directs in a reference picture, andspatially neighboring pixels of the current prediction unit in thecurrent picture.
 20. The video decoder according to claim 19, whereinthe interpolation filter module comprises: an obtaining unit, forobtaining the reference pixel position information to which the motionvector directs in the reference picture, and spatially neighboring pixelinformation of the current prediction unit in the current picture; and aprocessing unit, for performing the interpolation filtering processingaccording to the following formula:$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the luminance value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the luminance valueof the prediction pixel obtained by the interpolation filteringprocessing, α_(m,n) is the filter coefficient, (i, j) is the position ofthe current pixel, and (m, n) is the position of the prediction pixel;if (i−m)<0 and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the luminance valuefrom the current picture; otherwise, γ_(i−m,j−n) is the luminance valueof the pixel from the reference picture.
 21. The video decoder accordingto claim 19, wherein the interpolation filter module comprises: anobtaining unit, for obtaining the reference pixel position informationto which the motion vector directs in the reference picture, andspatially neighboring pixel information of the current prediction unitin the current picture; and a processing unit, for performing theinterpolation filtering processing according to the following formula:$p_{i,j} = {\sum\limits_{m = {- 2}}^{2}\; {\sum\limits_{n = {- 2}}^{2}\; {\alpha_{m,n}\gamma_{{i - m},{j - n}}}}}$wherein γ_(i,j) is the chroma value of the pixel from the currentpicture or reference picture participating in filtering of the currentprediction unit in the current picture, p_(i,j) is the chroma value ofthe prediction pixel obtained by the interpolation filtering processing,α_(m,n) is the filter coefficient, (i, j) is the position of the currentpixel, and (m, n) is the position of the prediction pixel; if (i−m)<0and (j−n)<3, or (j−n)<0, γ_(i−m,j−n) is the chroma value from thecurrent picture; otherwise, γ_(i−m,j−n) is the chroma value of the pixelfrom the reference picture.
 22. The video decoder according to claim 19,further comprising: a selection execution module, for selecting to startthe video decoder to perform execution according to the coding valueobtained by the CABAC.
 23. The method according to claim 2, furthercomprising: according to the coding value obtained by thecontext-adaptive binary arithmetic coding (CABAC), the method isselected to execute the inter picture prediction for video coding. 24.The method according to claim 3, further comprising: according to thecoding value obtained by the context-adaptive binary arithmetic coding(CABAC), the method is selected to execute the inter picture predictionfor video coding.
 25. The method according to claim 4, furthercomprising: according to the coding value obtained by thecontext-adaptive binary arithmetic coding (CABAC), the method isselected to execute the inter picture prediction for video coding. 26.The method according to claim 5, further comprising: according to thecoding value obtained by the context-adaptive binary arithmetic coding(CABAC), the method is selected to execute the inter picture predictionfor video coding.
 27. The method according to claim 6, furthercomprising: according to the coding value obtained by thecontext-adaptive binary arithmetic coding (CABAC), the method isselected to execute the inter picture prediction for video coding. 28.The method according to claim 9, further comprising: according to thecoding value obtained by CABAC, the method is selected to execute theinter picture prediction method for video decoding.
 29. The methodaccording to claim 10, further comprising: according to the coding valueobtained by CABAC, the method is selected to execute the inter pictureprediction method for video decoding.
 30. The video coder according toclaim 13, further comprising: a selection execution module, forselecting to start the video coder to perform execution according to thecoding value obtained by CABAC.
 31. The video coder according to claim14, further comprising: a selection execution module, for selecting tostart the video coder to perform execution according to the coding valueobtained by CABAC.
 32. The video coder according to claim 15, furthercomprising: a selection execution module, for selecting to start thevideo coder to perform execution according to the coding value obtainedby CABAC.
 33. The video coder according to claim 16, further comprising:a selection execution module, for selecting to start the video coder toperform execution according to the coding value obtained by CABAC. 34.The video coder according to claim 17, further comprising: a selectionexecution module, for selecting to start the video coder to performexecution according to the coding value obtained by CABAC.
 35. The videodecoder according to claim 20, further comprising: a selection executionmodule, for selecting to start the video decoder to perform executionaccording to the coding value obtained by the CABAC.
 36. The videodecoder according to claim 21, further comprising: a selection executionmodule, for selecting to start the video decoder to perform executionaccording to the coding value obtained by the CABAC.